import 'package:flutter/material.dart';

/// 2022年更新  适配 flutter 3.0
class TextPage01 extends StatefulWidget {
  @override
  State<StatefulWidget> createState() {
    return TextPage01State();
  }
}

class TextPage01State extends State with SingleTickerProviderStateMixin {
  final String _message =
      "志在巅峰的攀登者，不会陶醉在沿途的某个脚印之中，在码农的世界里，优美的应用体验，来源于程序员对细节的处理以及自我要求的境界，年轻人也是忙忙碌碌的码农中一员，每天、每周，都会留下一些脚印，就是这些创作的内容，有一种执着，就是不知为什么，如果你迷茫，不妨来瞅瞅码农的轨迹。";

  final String _message2 = "早起的年轻人";

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Colors.grey,
      appBar: AppBar(
        title: const Text("Text基本使用"),
      ),
      body: Center(
        child: Container(
          width: 300,
          height: 400,
          alignment: Alignment.center,
          color: Colors.white,
          child: Text(
            _message,
            style: const TextStyle(
              //文本颜色
              color: Colors.red,
              //文本大小
              fontSize: 22,
              //文本的粗细
              fontWeight: FontWeight.w600,

              ///线   默认 TextDecoration.none 无
              //TextDecoration.lineThrough 删除线
              //  TextDecoration.underline  下划线
              //TextDecoration.overline 顶部
              decoration: TextDecoration.underline,

              /// 下划线样式
                //  TextDecorationStyle.solid 实线 默认
                //TextDecorationStyle.double 双实线
                //TextDecorationStyle.dashed 虚线
                //TextDecorationStyle.dotted 点线
                //TextDecorationStyle.wavy 波浪线
              decorationStyle: TextDecorationStyle.wavy,

              /// 斜体
              fontStyle: FontStyle.normal,

              ///单字之间的间隔
              letterSpacing: 1,
              ///行高倍数
              height: 1.5,
            ),

            ///设置文本显示的最大行数
            maxLines: 2,

            ///TextOverflow.clip 直接裁剪
            ///TextOverflow.ellipsis 省略号
            ///TextOverflow.fade 渐变
            overflow: TextOverflow.fade,

            ///设置是否换行  false 单行显示  maxLines 属性设置失败
            softWrap: true,

            /// TextAlign.start 左上角
            /// TextAlign.end  右上角
            /// TextAlign.center 顶部中间
            ///
            /// TextAlign.justify 拉伸
            textAlign: TextAlign.start,

            /// TextDirection.ltr 从左到右
            /// TextDirection.rtl 从右到左
            textDirection: TextDirection.ltr,
          ),
        ),
      ),
    );
  }
}
